Class DBSSession

java.lang.Object
com.netscape.cmscore.dbs.DBSSession
All Implemented Interfaces:
AutoCloseable
Direct Known Subclasses:
LDAPSession

public class DBSSession extends Object implements AutoCloseable
An interface represents the database session. Operations can be performed with a session. Transaction and Caching support can be integrated into session.
  • Constructor Details

    • DBSSession

      public DBSSession()
  • Method Details

    • close

      public void close() throws DBException
      Closes this session.
      Specified by:
      close in interface AutoCloseable
      Throws:
      DBException - failed to close session
    • add

      public void add(String name, IDBObj obj) throws EBaseException
      Adds object to backend database. For example,
       session.add("cn=123459,o=certificate repository,o=airius.com", record);
       
      Parameters:
      name - name of the object
      obj - object to be added
      Throws:
      DBException - failed to add object
      EBaseException
    • read

      public IDBObj read(String name) throws EBaseException
      Reads an object from the database.
      Parameters:
      name - name of the object that is to be read
      Returns:
      database object
      Throws:
      EBaseException - failed to read object
    • read

      public IDBObj read(String name, String[] attrs) throws EBaseException
      Reads an object from the database, and only populates the selected attributes.
      Parameters:
      name - name of the object that is to be read
      attrs - selected attributes
      Returns:
      database object
      Throws:
      EBaseException - failed to read object
    • delete

      public void delete(String name) throws EBaseException
      Deletes object from database.
      Parameters:
      name - name of the object that is to be deleted
      Throws:
      EBaseException - failed to delete object
    • modify

      public void modify(String name, ModificationSet mods) throws EBaseException
      Modify an object in the database.
      Parameters:
      name - name of the object that is to be modified
      mods - modifications
      Throws:
      EBaseException - failed to modify
    • search

      public DBSearchResults search(String base, String filter) throws EBaseException
      Searchs for a list of objects that match the filter.
      Parameters:
      base - starting point of the search
      filter - search filter
      Returns:
      search results
      Throws:
      EBaseException - failed to search
    • search

      public DBSearchResults search(String base, String filter, int maxSize) throws EBaseException
      Searchs for a list of objects that match the filter.
      Parameters:
      base - starting point of the search
      filter - search filter
      maxSize - max number of entries
      Returns:
      search results
      Throws:
      EBaseException - failed to search
    • search

      public DBSearchResults search(String base, String filter, int maxSize, int timeLimit) throws EBaseException
      Searchs for a list of objects that match the filter.
      Parameters:
      base - starting point of the search
      filter - search filter
      maxSize - max number of entries
      timeLimit - timeout limit
      Returns:
      search results
      Throws:
      EBaseException - failed to search
    • search

      public DBSearchResults search(String base, String filter, int maxSize, String sortAttribute) throws EBaseException
      Searchs for a list of objects that match the filter.
      Parameters:
      base - starting point of the search
      filter - search filter
      maxSize - max number of entries
      sortAttribute - Field to sort the records on
      Returns:
      search results
      Throws:
      EBaseException - failed to search
    • search

      public DBSearchResults search(String base, String filter, int maxSize, int timeLimit, String sortAttribute) throws EBaseException
      Searchs for a list of objects that match the filter.
      Parameters:
      base - starting point of the search
      filter - search filter
      maxSize - max number of entries
      timeLimit - timeout limit
      sortAttribute - Field to sort the records on
      Returns:
      search results
      Throws:
      EBaseException - failed to search
    • search

      public DBSearchResults search(String base, String filter, String[] attrs) throws EBaseException
      Retrieves a list of object that satifies the given filter.
      Parameters:
      base - starting point of the search
      filter - search filter
      attrs - selected attributes
      Returns:
      search results
      Throws:
      EBaseException - failed to search
    • pagedSearch

      public DBSearchResults pagedSearch(String base, String filter, int start, int size) throws EBaseException
      Retrieves a list of object that satifies the given filter.
      Parameters:
      base - starting point of the search
      filter - search filter
      start - index of the first element
      size - max number of element in the page
      Returns:
      search results
      Throws:
      EBaseException - failed to search
    • pagedSearch

      public DBSearchResults pagedSearch(String base, String filter, int start, int size, int timeLimit) throws EBaseException
      Retrieves a list of object that satifies the given filter.
      Parameters:
      base - starting point of the search
      filter - search filter
      start - index of the first element
      size - max number of element in the page
      timeLimit - timeout limit
      Returns:
      search results
      Throws:
      EBaseException - failed to search
    • pagedSearch

      public DBSearchResults pagedSearch(String base, String filter, String[] sortKeys, int start, int size, int timeLimit) throws EBaseException
      Retrieves a list of object that satifies the given filter.
      Parameters:
      base - starting point of the search
      filter - search filter
      start - index of the first element
      size - max number of element in the page
      timeLimit - timeout limit
      sortKey - key used to sort the list
      Returns:
      search results
      Throws:
      EBaseException - failed to search
    • countEntries

      public <T extends IDBObj> int countEntries(Class<T> classResults, String base, String filter, int timeLimit) throws EBaseException
      Retrieves a list of object that satisfies the given filter.
      Parameters:
      classResults - the class representing the entries in the paged list
      base - starting point of the search
      filter - search filter
      timeLimit - timeout limit
      Returns:
      the number of certificates
      Throws:
      EBaseException - failed to search
    • persistentSearch

      public netscape.ldap.LDAPSearchResults persistentSearch(String base, String filter, String[] attrs) throws EBaseException
      Sets persistent search to retrieve modified certificate records.
      Parameters:
      base - starting point of the search
      filter - search filter
      attrs - selected attributes
      Returns:
      LDAP search results
      Throws:
      EBaseException - failed to search
    • createVirtualList

      @Deprecated(since="11.6.0", forRemoval=true) public <T extends IDBObj> DBVirtualList<T> createVirtualList(String base, String filter, String[] attrs) throws EBaseException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Retrieves a list of objects.
      Parameters:
      base - starting point of the search
      filter - search filter
      attrs - selected attributes
      Returns:
      search results in virtual list
      Throws:
      EBaseException - failed to search
    • createVirtualList

      @Deprecated(since="11.6.0", forRemoval=true) public <T extends IDBObj> DBVirtualList<T> createVirtualList(String base, String filter, String[] attrs, String sortKey, int pageSize) throws EBaseException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Retrieves a list of objects.
      Parameters:
      base - starting point of the search
      filter - search filter
      attrs - selected attributes
      sortKey - key used to sort the list
      pageSize - page size in the virtual list
      Returns:
      search results in virtual list
      Throws:
      EBaseException - failed to search
    • createVirtualList

      @Deprecated(since="11.6.0", forRemoval=true) public <T extends IDBObj> DBVirtualList<T> createVirtualList(String base, String filter, String[] attrs, String[] sortKeys, int pageSize) throws EBaseException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Retrieves a list of objects.
      Parameters:
      base - starting point of the search
      filter - search filter
      attrs - selected attributes
      sortKeys - keys used to sort the list
      pageSize - page size in the virtual list
      Returns:
      search results in virtual list
      Throws:
      EBaseException - failed to search
    • createVirtualList

      @Deprecated(since="11.6.0", forRemoval=true) public <T extends IDBObj> DBVirtualList<T> createVirtualList(String base, String filter, String[] attrs, String startFrom, String sortKey, int pageSize) throws EBaseException
      Deprecated, for removal: This API element is subject to removal in a future version.
      Retrieves a list of objects.
      Parameters:
      base - starting point of the search
      filter - search filter
      attrs - selected attributes
      startFrom - starting point
      sortKey - key used to sort the list
      pageSize - page size in the virtual list
      Returns:
      search results in virtual list
      Throws:
      EBaseException - failed to search
    • createPagedSearch

      public <T extends IDBObj> DBPagedSearch<T> createPagedSearch(Class<T> classResults, String base, String filter, String[] attrs, String sortKey) throws EBaseException
      Retrieves a paged search of objects.
      Parameters:
      classResults - the class representing the entries in the paged list
      base - starting point of the search
      filter - search filter
      attrs - selected attributes
      sortKey - key used to sort the list
      Returns:
      search results in virtual list
      Throws:
      EBaseException - failed to search
    • createPagedSearch

      public <T extends IDBObj> DBPagedSearch<T> createPagedSearch(Class<T> classResults, String base, String filter, String[] attrs, String[] sortKeys) throws EBaseException
      Retrieves a paged search of objects.
      Parameters:
      classResults - the class representing the entries in the paged list
      base - starting point of the search
      filter - search filter
      attrs - selected attributes
      sortKeys - keys used to sort the list
      Returns:
      search results in virtual list
      Throws:
      EBaseException - failed to search
    • abandon

      public void abandon(netscape.ldap.LDAPSearchResults results) throws EBaseException
      Throws:
      EBaseException